<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>

  <body>
    <script>
      // 1.移除数组 [1, 2, 3, 4, 2] 中的2。不要直接修改数组，结果返回新的数组
    let a = [1, 2, 3, 4, 2];
    console.log('a',a.splice(1,1));
    console.log('a',a);
    console.log('a',a.splice(3,1));
    console.log('a',a);

      // 2.定义一个函数,能在数组 [1, 2, 3, 4, 2] 的 "2"后面添加元素 "JavaScript"。不要直接修改数组 arr，结果返回新的数组
      function a() {
      let arr = [1, 2, 3, 4, 2];
      arr.splice(2,0,'JavaScript');
      arr.splice(6,0,'JavaScript');
      console.log('arr',arr);
    }
    a();
      // 3.统计数组 [1, 2, 3, 4, 2] 中2出现的次数
      let arr4 = [1, 2, 3, 4, 2];
    for(let i=0;i<arr4.length;i++){
      if(arr4[i] == 2){
        fn1=1;
        fn1 += fn1;
        console.log(fn1);
      }
    }
      // 4.找出数组 [1, 2, 3, "JavaScript", 4, "JavaScript", 2, 4, "JavaScript"] 中重复出现过的元素,并用数组将重复元素装起来输出

      // 5.在数组里面输出年龄小于17的对象
      let arr5 = [
        {
          name: '111',
          sex: 'boy',
          age: 18,
        },
        {
          name: '222',
          sex: 'girl',
          age: 17,
        },
        {
          name: '333',
          sex: 'boy',
          age: 16,
        },
        {
          name: '444',
          sex: 'girl',
          age: 15,
        },
        {
          name: '555',
          sex: 'boy',
          age: 20,
        },
      ];
      let fn = arr5.filter(obj => obj.age < 17);
      console.log(fn);

      // 6. 数组扁平化, 把数组[1, [2, [3, 4, 5]]]转成[1, 2, 3, 4，5] (多维数组 --> 一维数组)

      // 7. 使用reduce实现[1,2,3,4,9]数组中所有成员的和
      let arr = [1,2,3,4,9];
    let sum = arr.reduce((a,b) =>{
        return a + b;
    }
    )
    console.log(sum);
      // 8. 数组去重的方法 (4种)
    </script>
  </body>
</html>
